#include <stdio.h>
#include <string.h>
#define isspace(c)	(c == ' ' || c == '\t' || c == 10 || c == 13 || c == 0)

/**
 * skip_spaces - Removes leading whitespace from @str.
 * @str: The string to be stripped.
 *
 * Returns a pointer to the first non-whitespace character in @str.
 */
char *skip_spaces(const char *str)
{
	while (isspace(*str))
		++str;
	return (char *)str;
}

/**
 * strim - Removes leading and trailing whitespace from @s.
 * @s: The string to be stripped.
 *
 * Note that the first trailing whitespace is replaced with a %NUL-terminator
 * in the given string @s. Returns a pointer to the first non-whitespace
 * character in @s.
 */
char *strim(char *s)
{
	size_t size;
	char *end;

	s = skip_spaces(s);
	size = strlen(s);
	if (!size)
		return s;

	end = s + size - 1;
	while (end >= s && isspace(*end))
		end--;
	*(end + 1) = '\0';

	return s;
}

int main(int argc, char *argv[])
{
	const char *buff = " f_rndis,accessory,adb";
	char *name;
	char buf[256], *b;


	strncpy(buf, buff, sizeof(buf));
	b = strim(buf);
	printf("b = %s\n", b);
	while (b) {
		name = strsep(&b, ",");
		printf("name = %s\n", name);
	}

	return 0;
}
